﻿using System;

namespace Xenta.Operations
{
    /// <summary>
    /// Exposes the working context interface.
    /// </summary>
    public interface IWorkingContext
    {
        #region Properties

        /// <summary>
        /// Gets or sets the conversation
        /// global unique identifier.
        /// </summary>
        Guid CID
        {
            get;
        }

        /// <summary>
        /// Gets or sets the session
        /// global unique identifier.
        /// </summary>
        Guid SID
        {
            get;
        }

        /// <summary>
        /// Gets or set a value, which indicates, whether 
        /// the context is safe a context.
        /// </summary>
        bool IsSafe
        {
            get;
        }

        #endregion
    }

    /// <summary>
    /// Represents the working context.
    /// </summary>
    public class WorkingContext : IWorkingContext
    {
        #region Properties

        /// <summary>
        /// Gets or sets the conversation 
        /// global unique identifier.
        /// </summary>
        public Guid CID
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the session
        /// global unique identifier.
        /// </summary>
        public Guid SID
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or set a value, which indicates, whether 
        /// the context is safe a context.
        /// </summary>
        public bool IsSafe
        {
            get;
            set;
        }

        #endregion
    }
}
